package com.happycat.social.service;

import com.happycat.social.entity.SocialVoiceRoom;

/**
 * 房间权限处理
 * @Author shenbin
 * @CreatedDate 2020-09-11
 * @Modified By:
 */
public interface ISocialVoiceRoomPermissionService {

    /**
     * 是否拥有房主权限
     *
     * @param svrId 房间主键id
     * @return true/1: 拥有房主权限， false/0:没有
     * */
    boolean hasRoomCreatorPermission(long svrId);

    /**
     * 是否拥有房间管理员权限(房主也算)
     *
     * @param svrId 房间主键id
     * @return true/1: 拥有管理员权限， false/0:没有
     * */
    boolean hasRoomManagerPermission(long svrId);

    /**
     * 是否拥有房间主持人权限
     *
     * @param svrId 房间主键id
     * @return true/1: 拥有管理员权限， false/0:没有
     * */
    boolean hasRoomHostessPermission(long svrId);

    /**
     * 是否房间管理员
     *
     * @param svrId 房间主键id
     * @return true/1: 是管理员， false/0:不是管理员
     * */
    boolean isRoomManager(long svrId);

    /**
     * 是否主持人
     *
     * @param svrId 房间主键id
     * @return true/1: 是管理员， false/0:不是管理员
     * */
    boolean isRoomHostess(long svrId);

    /**
     * 是否拥有房主权限
     *
     * @param room 房间
     * @return true/1: 拥有房主权限， false/0:没有
     * */
    boolean hasRoomCreatorPermission(SocialVoiceRoom room);

    /**
     * 是否拥有房间管理员权限(房主也算)
     *
     * @param room 房间
     * @return true/1: 拥有管理员权限， false/0:没有
     * */
    boolean hasRoomManagerPermission(SocialVoiceRoom room);

    /**
     * 是否拥有房间主持人权限(房主也算)
     *
     * @param room 房间
     * @return true/1: 拥有管理员权限， false/0:没有
     * */
    boolean hasRoomHostessPermission(SocialVoiceRoom room);

}
